package org.jinxing.service;

import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.jinxing.model.ActionsInfo;
import org.jinxing.model.RolesInfo;

public interface RolesService {
	/**
	 * 获取所有的功能项,按照pid组成的树形结构。
	 * @param pid 上级功能节点
	 * @return
	 */
	List<ActionsInfo> getAllActionsInfoByTree(Integer pid);
	/**
	 * 登录折是否有权限
	 * @param request
	 * @return true有权限;false无权限
	 */
	boolean IsLgerOk(HttpServletRequest request);
	/**
	 * 获取所有的角色信息
	 * @return
	 */
	List<RolesInfo> getAllRolesInfo();
	/**
	 * 获取角色的所有功能项
	 * @param roleId
	 * @return
	 */
	List<ActionsInfo> getActionsByRole(Integer roleId);
	/**
	 * 保存角色的新功能项集合
	 * @param roleId
	 * @param actionsIdList
	 * @return
	 */
	boolean relationActionsToRole(Integer roleId,List<Integer> actionsIdList);
	/**
	 * 更新或新增角色
	 * @param roleInfo
	 * @return
	 */
	boolean saveOrUpdate(RolesInfo roleInfo);
	/**
	 * 更新活新增角色
	 * @param actions
	 * @return
	 */
	boolean saveOrUpdate(ActionsInfo actionInfo);
}
